Computer Aided Design (CAD) applications are used to produce computer models of two and three dimensional objects as part of the production process for the actual physical device being modeled. The models frequently include multiple parts which must be individually designed. The designer of the model parts may use specialized modeling features in order to design the model parts. Exemplary modeling features (which may be referred to as design intents) include extrusion, revolving, shelling, filleting, sweeping, lofting, blending, embossing, pattern copying, etc. The design intents may be parameterized and the model designer frequently experiments with different parameter values for the design intents during the design process. Once the designer is satisfied with the design, the actual physical device may be produced using the model.
3D scanning captures physical geometry information for a three-dimensional object by gathering high resolution points representing the shape of the scanned three-dimensional object. Once captured, the raw 3D scan data may be converted to a CAD part model for further processing to replicate or modify the design of the three-dimensional object. This procedure of capturing 3D scan data for a three-dimensional object in order to provide it to a CAD application so that the object may be redesigned is referred to as reverse engineering.
Unfortunately, the raw scan data captured by a 3D scanner during a reverse engineering process only represents a final geometry of the object. The fact that the 3D scan data only represents a final geometry of the object makes it difficult to retrace the original design intents and their parameter values. For example, it is difficult to determine from 3D scan data original design intents and their parameter values for features such as an extrusion 2D profile, a direction and distance, a revolving 2D profile, an axis and angle, a constant or varying filleting radii, a drafting plane and its angle, sweeping path curves, center lines of curved pipes, etc. The inability to determine the original design intents leads to the reverse engineering process being less precise and productive. It would be desirable to provide a computerized process working with a CAD system that programmatically assists the user in exploring and calculating key original design intents using raw 3D scan data.